package com.rockcent.mall.lib.repository;

import com.rockcent.common.common.PageResult;
import com.rockcent.mall.lib.domain.enumclass.MerchantOrderSourceType;
import com.rockcent.mall.lib.dto.MerchantOrderVerificationDto;
import org.springframework.stereotype.Repository;

/**
 * Created by DK on 16/10/29.
 */
@Repository
public interface MerchantOrderVerificationRepositoryCustom {

    PageResult<MerchantOrderVerificationDto> findMerchantOrderVerificationPage(Long merchantId, Long merchantStoreId, String keyword, String productName, String beginDate, String endDate, PageResult pageResult);

    Long countMerchantOrderVerificationByMallIdAndMerchantId(Long mallId, Long merchantId, String type, Long typeId, MerchantOrderSourceType orderSourceType, String startDate, String endDate);

    Long countMerchantCustomerVerificationByMallIdAndMerchantId(Long channelId, Long mallId, String type, Long merchantId, Long typeId, MerchantOrderSourceType orderSourceType, String startDate, String endDate);


    Long getVerifyOrderCountStatisticsYesterDay(Long mallId, Long merchantId);

    Long getVerifyCustomerCountStatisticsYesterDay(Long mallId, Long merchantId);

    Long getVerifyProductCountStatisticsYesterDay(Long mallId, Long merchantId);

    Double getVerifyOrderTotalStatisticsYesterDay(Long mallId, Long merchantId);
}
